package com.charges.service;

import com.charges.vo.RestResult;
import com.charges.query.RedemptionCodeQuery;

/**
 * 核销码服务接口
 * @author admin
 */
public interface RedemptionCodeService {

    /**
     * 验证核销码有效性
     * @param redemptionCode 核销码
     * @return 核销码验证结果
     */
    RestResult validateRedemptionCode(String redemptionCode);

    /**
     * 进行权益充值
     * @param redemptionCode 核销码
     * @return 充值结果
     */
    RestResult rechargeWithRedemptionCode(String redemptionCode);

    /**
     * 根据核销码查询充值金额
     * @param query 查询条件
     * @return 查询结果
     */
    RestResult<Double> getRechargeAmountByRedemptionCode(RedemptionCodeQuery query);
}